package cn.xinfei.xdecision.common.service.monitor.logger;

import cn.xinfei.xdecision.common.model.common.PageResult;
import cn.xinfei.xdecision.common.model.common.ResponseEntityDto;
import cn.xinfei.xdecision.common.model.monitor.logger.OperateLog;
import cn.xinfei.xdecision.common.model.monitor.logger.dto.OperateLogCreateDTO;
import cn.xinfei.xdecision.common.model.monitor.logger.vo.OperateLogPageReqVO;
import cn.xinfei.xdecision.common.model.monitor.logger.vo.OperateLogRespVO;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.validation.Valid;
import java.util.List;

public interface OperateLogService extends IService<OperateLog> {

	/**
	 * 记录操作日志
	 */
	void createOperateLog(@Valid OperateLogCreateDTO createReqDTO);

	/**
	 * 获取操作日志分页列表
	 */
	ResponseEntityDto<PageResult<List<OperateLogRespVO>, OperateLog>> getOperateLogPage(OperateLogPageReqVO operateLogPageReqVO);

	/**
	 * 查询日志详情
	 */
	OperateLogRespVO getOperateLogInfoById(Long logId);

}
